Skip to content

快速上手

本指南将帮助您快速开始使用 Gradio,从安装到创建您的第一个演示应用。

安装 Gradio

首先,使用 pip 安装 Gradio:

bash
pip install gradio

对于开发版本,您可以安装最新的 GitHub 版本:

bash
pip install git+https://github.com/gradio-app/gradio.git

创建您的第一个应用

以下是一个最简单的 Gradio 应用示例:

python
import gradio as gr

def greet(name):
    return "你好," + name + "!"

demo = gr.Interface(fn=greet, inputs="text", outputs="text")
demo.launch()

在这个例子中:

  • 我们定义了一个简单的函数 greet,它接受一个名字并返回问候语
  • 我们创建了一个 Interface 对象,将函数与文本输入和输出连接起来
  • 我们调用 launch() 方法来启动 Web 服务器

运行此代码后,您将看到类似以下的输出:

Running on local URL:  http://127.0.0.1:7860

打开此链接将显示一个简单的 Web 界面,您可以在其中输入名称并获取问候语。

理解基本结构

Gradio 应用由三个主要部分组成:

  1. 函数:您想要为其创建界面的 Python 函数
  2. 输入:函数的输入参数,映射到 UI 组件
  3. 输出:函数的输出,同样映射到 UI 组件

基本语法

python
import gradio as gr

def function_name(input1, input2, ...):
    # 处理输入
    return output1, output2, ...

demo = gr.Interface(
    fn=function_name,            # 您的函数
    inputs=[组件1, 组件2, ...],   # 输入组件
    outputs=[组件1, 组件2, ...],  # 输出组件
    title="应用标题",            # 可选:界面标题
    description="应用描述",      # 可选:界面描述
    examples=[[示例1], [示例2]]  # 可选:示例输入
)

demo.launch()

高级示例:图像处理器

以下是一个更复杂的示例,创建一个图像处理器:

python
import gradio as gr
import numpy as np
from PIL import Image, ImageFilter

def image_processor(image, filter_type, blur_radius):
    if filter_type == "模糊":
        return image.filter(ImageFilter.GaussianBlur(radius=blur_radius))
    elif filter_type == "轮廓":
        return image.filter(ImageFilter.FIND_EDGES)
    elif filter_type == "浮雕":
        return image.filter(ImageFilter.EMBOSS)
    else:
        return image

demo = gr.Interface(
    fn=image_processor,
    inputs=[
        gr.Image(type="pil"),
        gr.Radio(["无", "模糊", "轮廓", "浮雕"], label="滤镜类型", value="无"),
        gr.Slider(minimum=0, maximum=10, value=2, label="模糊半径")
    ],
    outputs=gr.Image(type="pil"),
    title="图像处理器",
    description="上传图像并应用不同的滤镜效果"
)

demo.launch()

公开分享您的应用

Gradio 允许您创建一个临时的公共链接来分享您的应用:

python
demo.launch(share=True)

这将生成一个可公开访问的链接,有效期为72小时。

下一步

在了解了基础之后,您可以:

  1. 查看完整的组件列表了解所有可用的输入/输出类型
  2. 了解如何使用Blocks API创建更复杂的界面
  3. 探索如何部署您的应用到生产环境

在下一章节中,我们将详细介绍 Gradio 的安装选项和配置。